package xs.szw.service.model.pojo.sys;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 系统日志表
 * @TableName sys_log
 */
@TableName(value ="sys_log")
@Data
public class Log implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 日志模块
     */
    @TableField(value = "module")
    private String module;

    /**
     * 请求方式
     */
    @TableField(value = "request_method")
    private String requestMethod;

    /**
     * 请求参数(批量请求参数可能会超过text)
     */
    @TableField(value = "request_params")
    private String requestParams;

    /**
     * 返回参数
     */
    @TableField(value = "response_content")
    private String responseContent;

    /**
     * 日志内容
     */
    @TableField(value = "content")
    private String content;

    /**
     * 请求路径
     */
    @TableField(value = "request_uri")
    private String requestUri;

    /**
     * 方法名
     */
    @TableField(value = "method")
    private String method;

    /**
     * IP地址
     */
    @TableField(value = "ip")
    private String ip;

    /**
     * 省份
     */
    @TableField(value = "province")
    private String province;

    /**
     * 城市
     */
    @TableField(value = "city")
    private String city;

    /**
     * 执行时间(ms)
     */
    @TableField(value = "execution_time")
    private Long executionTime;

    /**
     * 浏览器
     */
    @TableField(value = "browser")
    private String browser;

    /**
     * 浏览器版本
     */
    @TableField(value = "browser_version")
    private String browserVersion;

    /**
     * 终端系统
     */
    @TableField(value = "os")
    private String os;

    /**
     * 创建人ID
     */
    @TableField(value = "create_by")
    private Long createBy;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 逻辑删除标识(1-已删除 0-未删除)
     */
    @TableField(value = "is_deleted")
    private Integer isDeleted;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}